﻿<UserControl
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:toolkit="http://schemas.microsoft.com/winfx/2006/xaml/presentation/toolkit" xmlns:sdk="http://schemas.microsoft.com/winfx/2006/xaml/presentation/sdk" xmlns:GpxToolsLib="clr-namespace:GpxToolsLib;assembly=GpxToolsLib" xmlns:System_Windows_Controls_DataVisualization_Charting_Primitives="clr-namespace:System.Windows.Controls.DataVisualization.Charting.Primitives;assembly=System.Windows.Controls.DataVisualization.Toolkit" x:Class="TrailMap.Controls.ElevationProfile"
    mc:Ignorable="d" Height="216" Width="775">

	<UserControl.Resources>
		<!--<GpxToolsLib:TrackPoints x:Key="TrackPointsDataSource" d:IsDataSource="True"/>-->
		<Style x:Key="ElevationPlotChartStyle" TargetType="toolkit:Chart">
			<Setter Property="BorderBrush" Value="Black"/>
			<Setter Property="BorderThickness" Value="1"/>
			<Setter Property="IsTabStop" Value="False"/>
			<Setter Property="Padding" Value="10"/>
			<Setter Property="Palette">
				<Setter.Value>
					<toolkit:ResourceDictionaryCollection>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFB9D6F7"/>
								<GradientStop Color="#FF284B70" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFFBB7B5"/>
								<GradientStop Color="#FF702828" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFB8C0AC"/>
								<GradientStop Color="#FF5F7143" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFFDE79C"/>
								<GradientStop Color="#FFF6BC0C" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFA9A3BD"/>
								<GradientStop Color="#FF382C6C" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFB1A1B1"/>
								<GradientStop Color="#FF50224F" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FF9DC2B3"/>
								<GradientStop Color="#FF1D7554" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFB5B5B5"/>
								<GradientStop Color="#FF4C4C4C" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FF98C1DC"/>
								<GradientStop Color="#FF0271AE" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFC1C0AE"/>
								<GradientStop Color="#FF706E41" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFADBDC0"/>
								<GradientStop Color="#FF446A73" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FF2F8CE2"/>
								<GradientStop Color="#FF0C3E69" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFDCDCDC"/>
								<GradientStop Color="#FF757575" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFF4F4F4"/>
								<GradientStop Color="#FFB7B7B7" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
						<ResourceDictionary>
							<RadialGradientBrush x:Key="Background" Center="0.075,0.015" GradientOrigin="-0.1,-0.1" RadiusY="0.9" RadiusX="1.05">
								<GradientStop Color="#FFF4F4F4"/>
								<GradientStop Color="#FFA3A3A3" Offset="1"/>
							</RadialGradientBrush>
							<Style x:Key="DataPointStyle" TargetType="Control">
								<Setter Property="Background" Value="{StaticResource Background}"/>
							</Style>
							<Style x:Key="DataShapeStyle" TargetType="Shape">
								<Setter Property="Stroke" Value="{StaticResource Background}"/>
								<Setter Property="StrokeThickness" Value="2"/>
								<Setter Property="StrokeMiterLimit" Value="1"/>
								<Setter Property="Fill" Value="{StaticResource Background}"/>
							</Style>
						</ResourceDictionary>
					</toolkit:ResourceDictionaryCollection>
				</Setter.Value>
			</Setter>
			<Setter Property="TitleStyle">
				<Setter.Value>
					<Style TargetType="toolkit:Title">
						<Setter Property="FontSize" Value="16"/>
						<Setter Property="HorizontalAlignment" Value="Center"/>
						<Setter Property="Margin" Value="0,10,0,10"/>
					</Style>
				</Setter.Value>
			</Setter>
			<Setter Property="LegendStyle">
				<Setter.Value>
					<Style TargetType="toolkit:Legend">
						<Setter Property="Margin" Value="15,0,15,0"/>
						<Setter Property="VerticalAlignment" Value="Center"/>
						<Setter Property="BorderBrush" Value="#FFDBDBDB"/>
						<Setter Property="Background">
							<Setter.Value>
								<LinearGradientBrush EndPoint="0.442,0.005" StartPoint="0.558,0.995">
									<GradientStop Color="#FFDBDBDB"/>
									<GradientStop Color="#FFFFFFFF" Offset="1"/>
								</LinearGradientBrush>
							</Setter.Value>
						</Setter>
					</Style>
				</Setter.Value>
			</Setter>
			<Setter Property="ChartAreaStyle">
				<Setter.Value>
					<Style TargetType="Panel">
						<Setter Property="MinWidth" Value="100"/>
						<Setter Property="MinHeight" Value="75"/>
					</Style>
				</Setter.Value>
			</Setter>
			<Setter Property="PlotAreaStyle">
				<Setter.Value>
					<Style TargetType="Grid">
						<Setter Property="Background">
							<Setter.Value>
								<LinearGradientBrush EndPoint="0.457,0.296" StartPoint="0.459,1.296">
									<GradientStop Color="#FFCBCBCB"/>
									<GradientStop Color="#FFFFFFFF" Offset="1"/>
								</LinearGradientBrush>
							</Setter.Value>
						</Setter>
					</Style>
				</Setter.Value>
			</Setter>
			<Setter Property="Template">
				<Setter.Value>
					<ControlTemplate TargetType="toolkit:Chart">
						<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}">
							<Grid>
								<Grid.RowDefinitions>
									<RowDefinition Height="Auto"/>
									<RowDefinition Height="*"/>
								</Grid.RowDefinitions>
								<Grid Margin="0,15,0,15" Grid.Row="1">
									<Grid.ColumnDefinitions>
										<ColumnDefinition Width="*"/>
										<ColumnDefinition Width="Auto"/>
									</Grid.ColumnDefinitions>
									<System_Windows_Controls_DataVisualization_Charting_Primitives:EdgePanel x:Name="ChartArea" Style="{TemplateBinding ChartAreaStyle}">
										<Grid Style="{TemplateBinding PlotAreaStyle}" Canvas.ZIndex="-1"/>
										<Border BorderBrush="#FF919191" BorderThickness="1" Canvas.ZIndex="10"/>
									</System_Windows_Controls_DataVisualization_Charting_Primitives:EdgePanel>
								</Grid>
							</Grid>
						</Border>
					</ControlTemplate>
				</Setter.Value>
			</Setter>
		</Style>
	</UserControl.Resources>

    <Grid x:Name="LayoutRoot" Background="White">
    	<Grid Margin="2">
    		<Grid.ColumnDefinitions>
    			<ColumnDefinition Width="0.751*"/>
    			<ColumnDefinition Width="0.249*"/>
    		</Grid.ColumnDefinitions>
    		<sdk:Label HorizontalAlignment="Left" Margin="12,8,0,0" VerticalAlignment="Top" x:Name="lblYAxisUnit" />
    		<sdk:Label Margin="0,0,8,8" VerticalAlignment="Bottom" x:Name="lblXAxisUnit" RenderTransformOrigin="-6.35,0.469" HorizontalAlignment="Right" />
    		<toolkit:Chart x:Name="eleChart" VerticalAlignment="Top" Style="{StaticResource ElevationPlotChartStyle}" ScrollViewer.HorizontalScrollBarVisibility="Auto" ScrollViewer.VerticalScrollBarVisibility="Auto" Height="212" Margin="0,0,1,0"/>
    		<Border Grid.Column="1" Margin="0,0,0,34" BorderThickness="1" BorderBrush="Black" >
    			<TextBlock x:Name="txtSummary" TextWrapping="Wrap" Text="TextBlock" />
    		</Border>
    		<Button Content="Clear" Grid.Column="1" Height="22" HorizontalAlignment="Left" Margin="14,185,0,0" x:Name="bttnClear" VerticalAlignment="Top" Width="68" Click="bttnClear_Click" />
    		<Button Content="Hide" Grid.Column="1" Height="22" HorizontalAlignment="Left" Margin="108,185,0,0" x:Name="bttnHide" VerticalAlignment="Top" Width="73" Click="bttnHide_Click" />
    	</Grid>
    </Grid>
</UserControl>
